/*!
  \file    main.cpp
  \brief   Archivo donde convergen los diferentes modulos de inteligencia
  \author  Jose Alonso Solis-Lemus, (C) 2011
*/

#include <iostream>
// #include <QtCore/QCoreApplication>
#include <QtGui/QApplication>
#include <QString>
#include "./utils/qgetopt.h"


int main(int argc, char *argv[])
{
    //QCoreApplication a(argc, argv);
    QApplication a(argc, argv);


    GetOpt opts(argc, argv);
      bool help=false;
      bool kalman_tests=false;
      bool gui=false;
      bool test=false;
      int ecode=0;
      opts.addSwitch("help",&help);
      opts.addShortOptSwitch( 'k',QString("Kalman Filter Tests"),&kalman_tests, false);
      opts.addShortOptSwitch( 'i',QString("Graphical User Interface Mode"),&gui, false);
      opts.addShortOptSwitch('t', QString("General Tests Mode"), &test, false);
      if (!opts.parse()) {
        std::cout<<"ERROR:  Invalid command line parameters!\n";
        help=true;
        ecode=1;
      }
      if (help){
          std::cout<<"EK-Intel Software command line options:\n";
          std::cout<<" -k        Kalman Filter Prediction Research\n";
          std::cout<<" -i        Graphical User Interface (GUI) Mode\n";
          std::cout<<" -v        Classification Video Routines\n";
          std::cout<<" -t        General Tests (PID parameters, controlled mopvement, etc..)\n";
          std::cout<<" --help    Show this help\n";
          a.exit(ecode);
      }
    return a.exec();
}
